<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript">
        //1.在js中，所有变量都可以当做boolean使用
        //2. 0、null、NaN、undefined(有的浏览器显示为空)、""都认为是false
        var name
        var a=null
        if(!a){
            alert("hello")
        }
        //3.&&短路与运算，a&&b,若a为false,则返回a;若a为true,则返回b
        //注意与java的区别:
        //1.相同点:都遵循短路与的规则，即若前面的为false，后面的不再计算
        //2.不同点:java返回的是布尔值，并且非布尔类型的值不能用于&&运算
        //        而JavaScript的操作数可以是任意类型，返回值不一定是boolean类型
        var res1="dsd"&&800 //800 注意不是返回true，与java不同
        var res2=null&&800 //null
        alert("res1="+res1)
        alert("res2="+res2)
        //4.||短路或运算
        //a||b,若a不为false，则直接返回a,b不进行计算;若a为false，则返回b
        var n1=1
        var n2=3
        var n3=n1++||n2++
        alert("n1="+n1+" n2="+n2)//n1=2,n2=3
    </script>
</head>
<body>

</body>
</html>